// FIXME: your file license if you have one

#pragma once

#include <vendor/mega/hardware/common/mega_camera_enhancement/server/1.0/IWmarkServer.h>
#include <hidl/MQDescriptor.h>
#include <hidl/Status.h>

namespace vendor::mega::hardware::common::mega_camera_enhancement::server::implementation {

using ::android::hardware::hidl_array;
using ::android::hardware::hidl_memory;
using ::android::hardware::hidl_string;
using ::android::hardware::hidl_vec;
using ::android::hardware::Return;
using ::android::hardware::Void;
using ::android::sp;

struct WmarkServer : public V1_0::IWmarkServer {
    // Methods from ::vendor::mega::hardware::common::mega_camera_enhancement::server::V1_0::IWmarkServer follow.
    Return<void> init(int32_t bufNum) override;
    Return<void> updatePicture(const ::vendor::mega::hardware::common::mega_camera_enhancement::server::V1_0::WmarkPicture& picture) override;
    Return<void> updateText(const ::vendor::mega::hardware::common::mega_camera_enhancement::server::V1_0::WmarkText& text) override;
    Return<void> release() override;

    // Methods from ::android::hidl::base::V1_0::IBase follow.

};

// FIXME: most likely delete, this is only for passthrough implementations
// extern "C" IWmarkServer* HIDL_FETCH_IWmarkServer(const char* name);

}  // namespace vendor::mega::hardware::common::mega_camera_enhancement::server::implementation
